UPDATING VISTA

You can place files in a subdirectory of the update directory to fix bugs and update features.

The files that you place in this subdirectory are not automatically loaded by ViSta. Rather, you must include them in a load statement which is included in one of the five files in the update directory that are automatically loaded by ViSta during the startup process. These files are called 
  phase0.lsp phase1.lsp phase2.lsp phase3.lsp phase4.lsp
These five files are used to determine when the files that you have placed in the update directory are loaded during the startup process.  You must include the name of each file you have placed in the update directory in the load statement in one and only one of the phase*.lsp files.

The startup phases are as follows:

PHASE 0 - START
These files are used to change aspects of the system used before the initialization. You will need to use this phase for changes to verbose system (file verbose.lsp), changes to the initialization system (files vista.lsp, vista1.lsp and vista2.lsp) and for changes you include in other phases which should but don't take effect because the to-be-changed version has already loaded before phases 1, 2, 3 or 4.

PHASE 1 - INITIALIZATION
These files are used to change the initialization. Often, these files are changes to lspsrce or maketime files. They are loaded before anything else. 

PHASE 2 - RUNTIME
These files are loaded immediately after the runtime files are loaded, but before anything is done to create the initial user environment. These files are, essentially, additional runtime files. Do not use these files to override the distributed runtime files. If you wish to modify the runtime files you should make the modifications and place the modified files in the runtime directory, keeping the original filenames.

PHASE 3 - DESKTOP GUI
These files are used to alter the desktop after it is created. Often, these files are changes to source files. They are loaded after the desktop has been created.

PHASE 4 - SOURCE
These files are used to alter the workspace. Often, these files are new features. They are loaded after initial display is completely prepared but before it is seen and before any -f or dde files are read.


FILENAMES
Please use this naming convention for files in the update directory (where xxx is the original file name, when possible, and -mm-dd-yy is month-day-year of fix)

xxx-slt-mm-dd-yy.lsp  slot changes
xxx-fix-mm-dd-yy.lsp  bug fixes
xxx-bet-mm-dd-yy.lsp  betterments
xxx-new-mm-dd-yy.lsp  new features
xxx-mod-mm-dd-yy.lsp  modifications


SUBDIRECTORY NAME
Please name the subdirectory to identify the date of release of the changes. You must create a variable *update-subpath* whose value is a string which names the subdirectory. Do this with the following statement, substituting your subdirectory name (note use of back-quote and comma):

(setf *update-subpath* 
      (make-pathname 
       :directory `(:relative ,*update-path* "Sep17-2002")))


LOADING FILES
You should use the following statements to load files from the update subdirectory, substituting the appropriate filenames. Please include a comment explaining the update.

(mapcar 
 #'(lambda (filename) 
     (load (strcat *update-subpath* filename)))
 (list "datasmry-bet-09-03-02.lsp" ;changes about-these-data
       "datatype-fix-09-03-02.lsp" ;remove debugging message
       ))

